package com.heima.pojo.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 点位表实体类
 * 与数据库表 `tb_node` 直接映射，用于ORM操作
 */
@Data
@TableName("tb_node") // 指定对应的数据库表名
public class TbNode implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键ID，自增
     */
    @TableId(type = IdType.AUTO) // 标识为主键，且使用自增策略
    private Long id;

    /**
     * 点位名称
     * 数据库字段：`name`，非空，默认空字符串
     */
    private String name;

    /**
     * 点位详细地址
     * 数据库字段：`addr`，非空，默认空字符串
     */
    private String addr;

    /**
     * 所在区域Id
     * 数据库字段：`area_code`，非空，默认'0'
     */
    private String areaCode;

    /**
     * 创建人id
     * 数据库字段：`create_user_id`，非空
     */
    private Integer createUserId;

    /**
     * 区域id
     * 数据库字段：`region_id`，可为空
     */
    private Long regionId;

    /**
     * 商圈id
     * 数据库字段：`business_id`，非空
     */
    private Integer businessId;

    /**
     * 点位主Id
     * 数据库字段：`owner_id`，非空
     */
    private Integer ownerId;

    /**
     * 点位主名称
     * 数据库字段：`owner_name`，可为空
     */
    private String ownerName;

    /**
     * 更改时间
     * 数据库字段：`update_time`，非空
     */
    private LocalDateTime updateTime;

    /**
     * 创建时间
     * 数据库字段：`create_time`，非空
     */
    private LocalDateTime createTime;
}
